class Solution3 {
    public int lengthOfLongestSubstring(String s) {
         int len = s.length() ;
         int max = 0 ; 
         int[] hash = new int[128] ;
          char[] arr = s.toCharArray() ;
         for(int i = 0 , j=0 ;  j < len ; j ++){
               hash[arr[j]] ++ ;
               while(hash[arr[j]] > 1){
                 hash[arr[i++]] --  ;
               }
               max = Math.max(max, j-i+1) ;
         }
         return max ;
    }
}
